# -*- coding: utf-8 -*-

from enum import Enum


class TokenType(Enum):
    LPAREN = '('
    RPAREN = ')'
    STRING = 'STRING'
    NUMBER = 'NUMBER'
    SYMBOL = 'SYMBOL'
    ILLEGAL = 'ILLEGAL'
    EOF = 'EOF'


class Token:
    def __init__(self, type, literal):
        self.type = type
        self.literal = str(literal)

    def __repr__(self):
        return '<Token {} `{}\'>'.format(self.type, self.literal)
